Fixed lots of bugs and Test lots of situation, seems ok
Changed
Fortran input parameters should not get initial value in declaration. If you set a initial value to a parameter in declaration, it will get "save" effect, everytime OpenMP call Get_Kernel_Evaluation(), this parameter will be accumulated.
Component in Get_Kernel_Evaluation() has been set to intent(in).
BioComponent_rollback also gets detection_limit to prevent Grid_dt_second become 0 under Forward_Euler condiction.
Improved fortran code under evaluation condiction:
Evaluation scope now has 5 parts:
paramter
initial value of component
volume
initial value of inflow
initial value of flow
Input module will not assign if the scope are all false, for example, if we are conducting OAT evaluation, and all paramters are False (not evaluated), then, Parameter_OAT will not appear in Input and main_Evaluation module. In this case, computer memory will be saved a little, and increase some calculation speed.